package com.xinqi.modules.chat.favorite.dto.rsp;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 收藏内容表-响应对象
 *
 * @author: yyzhen
 * @date: 2023/03/23
 */
@Data
public class FavoriteContentResultDTO implements Serializable {

    /**
     * 主键
     */
    private Long id;
    /**
     * 创建者
     */
    private Long createBy;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    /**
     * 创建时间
     */
    private LocalDateTime updateTime;
    /**
     * 用户ID
     */
    private Long userId;
    /**
     * 类型ID
     */
    private Long typeId;
    /**
     * 来源类型 (1互动课件 2资料 3作业 4测评 5讨论 6互动视频 8公告 11聊天)
     */
    private Integer sourceType;
    /**
     * 来源ID (聊天：消息ID  课程内容：课程内容ID)
     */
    private String sourceId;
    /**
     * 来源 用户ID
     */
    private Long fromUid;
    /**
     * 内容
     */
    private String content;
    /**
     * 文件名称
     */
    private String fileUrl;
    /**
     * 视频封面图
     */
    private String videoCoverImage;
    /**
     * 文件后缀名称
     */
    private String fileExt;
    /**
     * 文件大小
     */
    private Long size;
    /**
     * 时长
     */
    private Integer duration;
    /**
     * 标签ID
     */
    private Long tagId;
    /**
     * 标签名称
     */
    private String tagName;
    /**
     * 最近查看时间
     */
    private LocalDateTime recentViewTime;
    /**
     * 用户头像
     */
    private String avatar;
    /**
     * 用户昵称
     */
    private String nickname;
    /**
     * 来源用户头像
     */
    private String fromAvatar;
    /**
     * 来源用户昵称
     */
    private String fromNickname;
    /**
     * 类型
     */
    private String typeName;

    /**
     * 标签主键集合 （多标签，隔开）
     */
    private String tagIds;

    /**
     * 标签对象集合
     */
    private List<String> tagList;

}
